package tsing.good_simple.goodutil;

import java.lang.reflect.Field;
import java.util.ArrayList;

/**
 * @Date 2024/11/25 10:51
 * @Author Tsing
 *
 * list集合工具类
 */
public class ListUtils {


    /**
     * 获取ArrayList集合的容量 （容量  不等于  长度）
     * 该方法不适用与jdk 1.8 以上的版本
     * @param list
     * @return
     *
     */
    public static int getListCapacity(ArrayList<?> list){
        try {
            Field field = ArrayList.class.getDeclaredField("elementData");
            field.setAccessible(true);
            int capacity = ((Object[])field.get(list)).length;
            field.setAccessible(false);
            return capacity;
        } catch (Exception e) {
            throw new RuntimeException(e);
        }


    }
}
